ADXL Trigering — Web GUI User Guide
The device hosts a built-in web interface accessible over Wi-Fi or LTE.
Open a browser and navigate to the device's IP address (shown on the Status tab or obtainable from your router's DHCP table or if you are using device access point, you can use address http://192.168.4.1).
Navigation
The interface is divided into eight tabs:
| Tab | Purpose |
|---|---|
| Status | Live sensor data, trigger events, system health |
| ADXL355 | Sensor hardware configuration |
| Measurement | Mode selection, trigger/manual settings, schedules |
| Network | Wi-Fi, AP and LTE/modem settings |
| System | Device identity, upload, SD card, OTA firmware update |
| Files | Browse and download files from the SD card |
| Logs | View crash/application logs |
| Analysis | Offline waveform analysis with FFT and velocity |
The device name, firmware version and uptime are shown in the header bar at all times. A real-time clock shows both the device's RTC time (UTC) and the browser's local time.
Status Tab
Recording Banner
When a manual or scheduled measurement is active, a red banner appears at the top of the page showing:
- a fill progress bar,
- percentage complete,
- time remaining (hours/minutes/seconds),
- the measurement label (schedule name or Manual).
The banner disappears automatically when the recording finishes.
Live Sensor Data
Refreshes automatically every 2 seconds.
Time display — two clocks side by side: the device's RTC time in UTC and the browser's local time.
Tilt sphere — a dot moves on a circular diagram representing the X/Y tilt of the sensor. The dot colour transitions from green to red as the vector acceleration magnitude increases.
X / Y / Z bars — horizontal bars show the current RMS acceleration for each axis. The value to the right of each bar is the RMS; below it is the peak for the current statistics window. Separate bars for Roll, Pitch and Inclination show tilt angles in degrees.
Mag peak — vector magnitude peak across all axes for the current statistics window.
X freq — dominant frequency detected on the X axis.
RMS history chart — a line chart showing the last 60 statistics windows for all three axes simultaneously. Useful for spotting trends at a glance.
Trigger state badge (top-right of the card):
| Badge | Meaning |
|---|---|
| IDLE | No vibration above threshold |
| TRIGGERED | Threshold exceeded — recording in progress |
| POST-TRIGGER | Recording the post-trigger buffer |
| COMPLETE | Recording done, file saved |
Mode badge shows whether the device is in Triggering or Manual mode.
Detected Triggers
A table listing the most recent trigger events. Each row shows:
| Column | Description |
|---|---|
| Time | Event timestamp from the RTC |
| Axis | Which axis fired the trigger |
| Value | Acceleration value that exceeded the threshold |
| RMS (X/Y/Z) | Per-axis RMS at the time of the trigger |
| Peak (X/Y/Z) | Per-axis peak at the time of the trigger |
| Mag peak | Vector magnitude peak |
| Samples | Number of samples recorded |
Click Refresh to reload the list.
Scheduled Measurements
Visible only in Manual mode. Shows a countdown to the next scheduled measurement and a summary of all active schedules.
System Cards
Updated every 15 seconds:
| Card | Contents |
|---|---|
| Device | Name, ID, serial number, firmware version, uptime, free heap, RTC time |
| Network | Wi-Fi SSID and IP, LTE connection status, LTE IP, signal strength, IMEI, active interface (WiFi / LTE) |
| Power (BQ25798) | VBUS voltage, battery voltage, charge current, charge state, online/fault flags |
| SD Card | Mount status, total/free capacity, number of files pending upload |
| Cloud Upload | Upload status, progress bar (when active), last successful upload time, last error, total OK/error count |
ADXL355 Tab
Configure the sensor hardware. Click Save to write settings to NVS flash. Reload fetches the current values from the device.
Sampling
| Setting | Range | Description |
|---|---|---|
| ODR (Hz) | 31.25 – 4000 | Output data rate. Options: 31.25, 62.5, 125, 250, 500, 1000, 2000, 4000 Hz |
| Range | ±2 g / ±4 g / ±8 g | Measurement range |
| High-Pass Filter | 0 – 6 | Hardware HPF corner frequency (0 = off). Values 1–6 correspond to multiples of the ODR per the ADXL355 datasheet |
| FIFO Samples | 0 – 96 | Internal FIFO depth (0 = FIFO disabled) |
Statistics
| Setting | Range | Description |
|---|---|---|
| Stats Window (s) | 1 – 3600 | Length of the rolling statistics accumulation window (default 60 s). RMS, peak and dominant-frequency values on the Status tab are computed over this window |
Self-Test
Click Self-Test to trigger the ADXL355 built-in hardware self-test routine. The result (PASS / FAIL) is shown next to the button.
Measurement Tab
Measurement Type
Select the operating mode and click Save Settings:
| Mode | Description |
|---|---|
| Triggering (automatic) | The device continuously monitors acceleration. When the configured threshold is exceeded, a waveform is automatically saved |
| Manual measurement | Recording starts and stops on user command or on a pre-defined schedule |
Trigger Settings (Triggering mode only)
Activity Detection
Hardware-level activity/inactivity detection built into the ADXL355. Set to 0 to disable.
| Setting | Range | Description |
|---|---|---|
| Act. Threshold (mg) | 0 – 8000 | Hardware activity detection threshold in milli-g |
| Inact. Threshold (mg) | 0 – 8000 | Hardware inactivity detection threshold in milli-g |
Trigger
Software-level trigger that processes the sampled data stream.
| Setting | Range | Description |
|---|---|---|
| Trigger Enabled | — | Master enable/disable for the software trigger |
| Threshold (mg) | 1 – 8000 | Acceleration level in milli-g that fires the trigger |
| Trigger Axis | Any / X / Y / Z / Magnitude | Which axis is monitored |
| Pre-Trigger (s) | 0 – 60 | Seconds of data buffered before the trigger event (stored in a RAM ring buffer) |
| Post-Trigger (s) | 1 – 600 | Seconds of recording after the trigger fires |
| Cooldown (s) | 0 – 3600 | Minimum time between two consecutive trigger events |
Baseline (Idle State)
The threshold is compared against the deviation from a calibrated idle state rather than absolute values. This eliminates the effect of a constant tilt or gravity component.
- Set Baseline — captures the current average acceleration as the reference idle state. Run this with the sensor in its normal resting position and no vibration present.
- Clear Baseline — removes the baseline; the trigger reverts to absolute value comparison.
The badge shows whether a baseline is currently active and displays its stored X/Y/Z values in g.
Best practice for structural monitoring: Always set the baseline with the structure at rest before enabling the trigger. This ensures the threshold responds to changes in vibration rather than static tilt.
Manual Measurement (Manual mode only)
| Control | Range | Description |
|---|---|---|
| Duration (s) | 1 – 86 400 | Length of the recording |
| Start | — | Begins recording immediately for the specified duration |
| Stop | — | Terminates an active recording early |
A state label (Recording…, Saving to SD…, Done), progress bar and percentage indicator show the current recording state. The Start button is hidden while recording is active; the Stop button is shown only while the device is actively recording (state Recording…).
Scheduled Measurements (Manual mode only)
Measurements can be scheduled to run automatically at specific times without user intervention. Up to 10 schedules are supported.
Click + Add to create a new schedule. Click the edit icon on an existing row to modify it.
Schedule fields:
| Field | Description |
|---|---|
| Label | Optional name shown in logs and on the Status tab (max 23 characters) |
| Start time | Hour (0–23) and minute (0–59) in UTC |
| Duration (s) | How long the recording runs (1 – 600 s) |
| Days of week | Checkboxes for Mon–Sun. All checked = every day |
| Enabled | Uncheck to temporarily disable a schedule without deleting it |
Click Save in the modal to confirm. Click the delete icon (×) on an existing row to remove a schedule.
Recent Recordings
Lists the most recently saved waveform files from the SD card. Each entry shows the timestamp, type badge (trigger or manual) and file size.
Click a file name to open it directly in the Analysis tab. Click Refresh to reload the list.
Network Tab
Click Save Network Settings after making changes.
Wi-Fi Station
| Setting | Description |
|---|---|
| WiFi SSID | Name of the Wi-Fi network to connect to. Click Scan to see available networks and select one from the list |
| WiFi Password | Password for the selected network. Leave blank to keep the existing stored password |
Wi-Fi AP
The device always runs a Wi-Fi Access Point (SSID = device name).
| Setting | Description |
|---|---|
| AP Password | Password for the device's own AP. Leave blank for an open network |
LTE / Modem
| Setting | Description |
|---|---|
| LTE Enabled | Enable/disable the LTE modem (Quectel EG25-G) |
| Priority interface | WiFi (LTE backup) — use Wi-Fi when available, fall back to LTE. LTE (WiFi backup) — prefer LTE |
| APN | Carrier APN string (e.g. internet) |
| LTE User / Password | PPP credentials if required by the carrier (usually left blank) |
System Tab
Click Save System Settings after making changes.
Device Identity
| Setting | Max length | Description |
|---|---|---|
| Device Name | 31 characters | Human-readable name shown in the header and sent to the management server |
Server & Upload
| Setting | Range | Description |
|---|---|---|
| Server URL | 127 characters | Base URL of the Statotest management server (e.g. http://192.168.1.10:5000) |
| Heartbeat (s) | 10 – 86 400 | How often the device sends a status report to the server (default 60 s) |
| Upload Interval (s) | 60 – 86 400 | How often completed waveform files are uploaded to the server (default 3600 s) |
SD Storage
| Setting | Range | Description |
|---|---|---|
| SD Logging | — | Enable or disable saving waveform files to the SD card |
| Retention (days) | 0 – 365 | Automatically delete files older than N days. 0 = keep forever |
Maintenance
| Setting | Range | Description |
|---|---|---|
| Auto Restart (h) | 0 – 720 | Automatically restart the device every N hours. 0 = disabled. Useful for long-term unattended deployments |
Acceleration Unit
| Setting | Description |
|---|---|
| Display unit | Choose between g and m/s² for the live Status view and the Analysis tab. Raw data on the SD card is always stored in g |
Firmware Update (OTA)
- Click the file picker and select a
.binfirmware file. - Click Flash Firmware.
- A progress bar and status message track the upload. The device automatically restarts when flashing is complete.
Restart Device button performs a software reset immediately.
Files Tab
Browses the SD card directory tree.
- Click a folder name to navigate into it. The breadcrumb bar at the top shows the current path; click any segment to navigate back.
- Each file row shows the file name, size and modification date.
- Click ↓ (download icon) next to any file to download it to the browser.
- Click × (delete icon) next to any file to permanently delete it from the SD card. Folders can also be deleted when empty.
- Click Refresh to reload the current directory.
Logs Tab
Displays crash reports and application log entries stored on the SD card. Click Refresh to reload.
Useful for diagnosing unexpected restarts, sensor errors or upload failures.
Analysis Tab
Performs browser-side signal processing on a previously recorded waveform file. No data is sent to any external service — all computation runs locally in the browser.
Loading a File
- Open the Analysis tab. The file selector is populated automatically from the SD card, newest files first.
- Select the desired file from the dropdown. Click Refresh to rescan if needed.
- Click Load & Analyse. A progress bar below the status line shows download progress — both kilobytes received and percentage (e.g. 47% (382 / 810 KB)). Processing begins automatically once the download completes.
Files can also be opened directly by clicking Analyze in the Recent Recordings list on the Measurement tab.
Note: Files recorded at high ODR for long durations can be several MB. The Analysis tab processes up to 200 000 samples; larger files are automatically downsampled using even-step decimation so that the full waveform time span is preserved.
Display Options
| Control | Range | Description |
|---|---|---|
| Display unit | g / m/s² | Acceleration unit used in all charts and statistics tables |
| HPF cutoff (Hz) | 0.05 – 5 Hz (step 0.05) | High-pass filter cutoff frequency. Applied before velocity integration to remove DC offset and very low-frequency drift. Default 0.50 Hz |
| LPF (noise reduction) | checkbox | Enable an optional Butterworth low-pass filter to reduce high-frequency sensor noise |
| LPF cutoff (Hz) | 5 – 400 Hz (step 5) | Low-pass filter cutoff frequency. Visible only when LPF is enabled. Default 50 Hz |
All filter settings take effect immediately — changing any slider or checkbox re-runs the full analysis pipeline without re-downloading the file.
Main Analysis Results
Once a file is loaded and analysed, results appear in the following sections:
Statistics Tables
| Table | Contents |
|---|---|
| Acceleration Statistics | RMS, peak, min, max and standard deviation for X, Y and Z axes |
| Velocity Statistics | Peak and RMS velocity for Vx, Vy, Vz and vector magnitude |V|. Always in m/s, regardless of the display unit setting. Computed by numerically integrating HPF-filtered acceleration using the trapezoidal method |
| Dominant Frequencies | Up to 10 strongest frequency peaks across all axes from the FFT, sorted by amplitude, with per-axis attribution |
Charts
Four interactive charts are rendered:
| Chart | Description |
|---|---|
| Acceleration — Time Domain | HPF/LPF-filtered acceleration vs time for X, Y, Z axes |
| FFT Spectrum | Single-sided amplitude spectrum (Hann window applied before FFT). X-axis is frequency in Hz |
| Dominant Frequency Components | Bar chart of the top FFT peaks grouped by axis. Bars are colour-coded — red = X, green = Y, blue = Z. Useful for comparing the dominant frequencies of each axis at a glance |
| Velocity — Time Domain | Integrated velocity (Vx, Vy, Vz and |V| magnitude) vs time in m/s |
Chart navigation (applies to all charts):
| Action | Effect |
|---|---|
| Scroll wheel | Zoom in/out on the time or frequency axis |
| Click and drag | Pan the view |
| Double-click | Reset zoom to full view |
| Reset button | Resets zoom programmatically |
| PNG button | Saves the current chart view as a PNG image file |
Download Report
Click ↓ Report to download a plain-text report file. It contains:
- file metadata (device, timestamp, sample rate, channel, filter settings),
- Acceleration Statistics table,
- Velocity Statistics table,
- Dominant Frequencies table.
Section Analysis
The acceleration time-domain chart supports selecting a sub-range of the waveform for independent re-analysis. This is useful for isolating a specific event (e.g. a transient impact) within a longer recording.
Selecting a Range
- Click the □ Select range button above the acceleration chart. The button highlights and the chart overlay becomes active.
- Click and drag on the chart to mark the desired time range. A yellow band shows the selected region and updates in real time as you drag.
- Release the mouse. The selection info bar shows the selected start and end time (in seconds).
- Click Analyse section in the info bar.
To cancel a selection before confirming, click □ Select range again to deactivate selection mode.
Section Analysis Block
A new analysis block is appended below the main results, with the heading Section analysis: X.XXX s — Y.YYY s showing the selected time range, the section duration, number of samples and sample rate.
Each section block contains a full independent analysis:
- Acceleration Statistics, Velocity Statistics and Dominant Frequencies tables
- Acceleration, FFT, Dominant Frequency Components and Velocity charts (all fully interactive)
- ✕ Remove button — removes the block and destroys the associated charts
Multiple sections can be analysed simultaneously. Each block is independent and remains until removed. Time values in the section are re-zeroed to start at 0 s.
Changing the HPF/LPF sliders re-runs the main analysis only; section blocks are not automatically updated. Use ✕ Remove and re-select to refresh a section after changing filter settings.
Tips
- Connecting for the first time: If the device has no Wi-Fi credentials, connect to its AP (SSID = device name, default password set during provisioning) and open
http://192.168.4.1. - Time synchronisation: The device RTC is set automatically via NTP when connected to the internet. The Status tab shows both device UTC time and browser local time for easy comparison.
- Large waveform files: Files recorded at 4000 Hz for several minutes can exceed 10 MB. The Analysis tab caps processing at 200 000 samples using step-based decimation — the full time span is still visible, just at reduced time resolution.
- Velocity integration accuracy: The HPF cutoff significantly affects velocity results. Too low a cutoff may leave residual DC drift that accumulates during integration. The default of 0.50 Hz is suitable for most vibration measurements; raise it to 1–2 Hz if velocity shows a slow drift trend.
- Section analysis for events in long recordings: When a full waveform contains one or more short transient events, use section analysis to compute statistics and FFT exclusively for the event window rather than the full recording.
- Schedule UTC times: All schedule start times are specified and stored in UTC. Keep this in mind if your local time zone differs from UTC.